<?php
/**
 * @date        <!-- phpDesigner :: Timestamp [08-07-2010 00:18:21] -->
 * @filesource  cms.dir.php
 * @package     WebCms
 * @copyright	Copyright (C) 2010
 * @author      Sérgio 'Horizak' Alves
 */

// Sem acesso directo
defined('_WEXEC') or die('Restricted access');

// Separador de directórios
define('DS',DIRECTORY_SEPARATOR);
$xds = DS == '/' ? '\\' : '/';

// Verifica a porta do servidor
$port = $_SERVER['SERVER_PORT'] != 80 ? ':'.$_SERVER['SERVER_PORT'] : null;

// Directório root do servidor
define('SROOT_P',str_replace($xds,DS,$_SERVER['DOCUMENT_ROOT']).DS);
define('SROOT_U','http://'.$_SERVER['SERVER_NAME'].$port.'/');
unset($xds,$port);

// Directório root da aplicação WebCms
$global['server']['dir'] = array_diff(explode(DS,dirname(__file__)),explode(DS,SROOT_P));
$global['server']['dir_p'] = implode(DS,$global['server']['dir']).($global['server']['dir'] ? DS : '');
$global['server']['dir_u'] = implode('/',$global['server']['dir']).($global['server']['dir'] ? '/' : '');
define('ROOT_P',SROOT_P.$global['server']['dir_p']);
define('ROOT_U',SROOT_U.$global['server']['dir_u']);

// Directório admin
define('ADMIN_P',ROOT_P.'adminweb'.DS);
define('ADMIN_U',ROOT_U.'adminweb/');

// Directório das imagems
define('IMG_P',ROOT_P.'images'.DS);
define('IMG_U',ROOT_U.'images/');
  define('FLAG_P',IMG_P.'flags'.DS);
  define('FLAG_U',IMG_U.'flags/');

// Directório dos includes
define('INC_P',ROOT_P.'includes'.DS);
define('INC_U',ROOT_U.'includes/');
  define('COM_P',INC_P.'components'.DS);
  define('COM_U',INC_U.'components/');
  define('CFG_P',INC_P.'configuration'.DS);
  define('CFG_U',INC_U.'configuration/');
  define('FUNC_P',INC_P.'functions'.DS);
  define('FUNC_U',INC_U.'functions/');
    define('XFUNC_P',FUNC_P.'xfunctions'.DS);
    define('XFUNC_U',FUNC_U.'xfunctions/');
  define('JS_P',INC_P.'javascript'.DS);
  define('JS_U',INC_U.'javascript/');
  define('LANGS_P',INC_P.'languages'.DS);
  define('LANGS_U',INC_U.'languages/');
  define('LIB_P',INC_P.'libraries'.DS);
  define('LIB_U',INC_U.'libraries/');
  define('MOD_P',INC_P.'modules'.DS);
  define('MOD_U',INC_U.'modules/');
  define('SPLUGIN_P',INC_P.'splugins'.DS);
  define('SPLUGIN_U',INC_U.'splugins/');
  define('STPLS_P',INC_P.'stemplates'.DS);
  define('STPLS_U',INC_U.'stemplates/');
  define('TPLS_P',INC_P.'templates'.DS);
  define('TPLS_U',INC_U.'templates/');

// Directório da instalação
define('INSTALL_P',ROOT_P.'install'.DS);
define('INSTALL_U',ROOT_U.'install/');

// Directório temporarios
define('TMP_P',ROOT_P.'temp'.DS);
define('TMP_U',ROOT_U.'temp/');
  define('CACHE_P',TMP_P.'cache'.DS);
  define('CACHE_U',TMP_U.'cache/');
  define('TMPSMARTY_P',TMP_P.'smarty'.DS);
  define('TMPSMARTY_U',TMP_U.'smarty/');
    define('SMARTYC_P',TMPSMARTY_P.'cache'.DS);
    define('SMARTYC_U',TMPSMARTY_U.'cache/');
    define('SMARTYCL_P',TMPSMARTY_P.'compile'.DS);
    define('SMARTYCL_U',TMPSMARTY_U.'compile/');
    define('SMARTYCFG_P',TMPSMARTY_P.'config'.DS);
    define('SMARTYCFG_U',TMPSMARTY_U.'config/');

// Directório das librarias externas
define('ELIB_P',LIB_P.'external'.DS);
define('ELIB_U',LIB_U.'external/');
?>